<?php

namespace app\index\controller;

use think\Controller;
use think\Request;
use Myredis\Myredis;
use think\Db;

class Download extends Indexcontroller
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
        return view('index');
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        //
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        //
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {
        //
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        //
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        //
    }

    // 执行下载
    public function dodown(Request $request)
    {
        $uname=$request->session('name');
        $uid=$request->session('uid');
        $icon=input('icon');
        $ggid=input('id');

        $aac=Db::table('xo_goods_up')->where(['id'=>$ggid])->find();

        if(empty($aac)){
            return $this->error('该作品已被作者删除');
        }

        $id=input('id');
        $dw_num=input('dw_num');

        if($dw_num=='1'){
        $v['dw_num']='0';
        Db::table('xo_user')->where(['id'=>$uid])->update($v);
        }
        $time=time();
        $data['gid']=$id;
        $data['icon']=$icon;
        $data['downtime']=$time;
        $data['uid']=$uid;

        // // 获取GET传递过来的 name值, 要下载的文件名
        $filename = $icon;

        // // 从获取的文件名中 截取出文件的后缀
        $ext = pathinfo($filename, PATHINFO_EXTENSION);

        // 设置可下载的文件MIME类型
        $mime_type = [
            'jpg' => 'image/jpeg',
            'JPG' => 'image/jpeg',
            'png' => 'image/png',
            'PNG' => 'image/png',
            'gif' => 'image/gif',
            'GIF' => 'image/gif',
            'rar' => 'application/zip',
            'html' => 'text/html',
            'php' => 'text/plain',
            'txt' => 'text/plain'
        ];

        // //  获取实际文件大小
        // $size = filesize('./downlist/'.$filename);
        // var_dump($size);die;
        // // var_dump($mime_type['png']);
        // // exit;

        // // 要下载的文件类型是:
        header('Content-type: '. $mime_type[$ext]);

        // // 要下载的文件名字是
        // // Disposition 配置    attachment 附件
        header('Content-Disposition: attachment; filename="'.$filename.'"');

        // // 下载文件的大小
        // header('Content-Length: '. $size);

        // 下载格式:
        // http://pdyc9epam.bkt.clouddn.com/201808245b7fbc70077a2.jpg
        // // 下载的资源位置


        readfile('http://pdyc9epam.bkt.clouddn.com/'.$filename);

        $res['sold']=Myredis::hincrby('sold',$id,'1');
        Db::table('xo_goods_up')->where(['id'=>$id])->update($res);
        Db::table('xo_user_down')->insert($data);








    }
}
